package com.lianrui.app.order.services;

import com.lianrui.app.order.domain.Order;
import com.lianrui.app.order.domain.OrderItem;
import com.lianrui.app.order.domain.OrderLog;
import com.lianrui.app.order.vos.OrderPage;
import com.lianrui.commons.exception.BusinessException;
import com.lianrui.core.IService;


/**
 * 功能描述：订单服务
 *
 * @author LJQ
 *
 * 2015年12月22日 下午4:46:28
 */
public interface IOrderService extends IService<OrderPage, Order, Integer>  {
	
	/**
	 * 功能描述：添加订单日志
	 * @param log 日志对象
	 * @return
	 * @throws BusinessException
	 */
	public void addLog(OrderLog log) throws BusinessException;
	
	/**
	 * 修改订单状态
	 * @param orderId ： 订单id
	 * @param status ： 订单状态
	 */
	public void updateOrderStatus(Integer orderId, Integer status) throws BusinessException;
	
	/**
	 * 功能说明：创建订单
	 * @param vo
	 * @return
	 * @throws BusinessException 
	 */
	public Order create(Integer productId, Integer num, Integer... cartIds) throws BusinessException;
	
	/**
	 * 功能说明：添加订单项
	 * @param item
	 * @throws BusinessException
	 */
	public void addItem(OrderItem... item) throws BusinessException;

	/**
	 * 功能说明：手机端简易支付
	 * @param id 订单编码
	 */
	public void payMobile(Integer id) throws BusinessException;
}
